<%@page contentType="text/html" pageEncoding="UTF-8"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

<%@page import="util.*"%>
<%@page import="entidades.*"%>
<%@page import="java.util.Map"%>
<%@page import="java.util.List"%>
<%@page import="java.util.Date"%>
<%@page import="java.util.HashMap"%>
<%@page import="java.util.LinkedList"%>
<%@page import="java.text.SimpleDateFormat"%>

<html>
<head>

<%@ include file="jspf/head.jspf" %>

<script type="text/javascript" src="js/sp/ordenes-venta.jsp"></script>

</head>
<body>

<%@ include file="jspf/header.jspf" %>

<br/>

<h1>Órdenes de venta</h1>

<br/>


<%
int pais = 0;
int usuario = 0;
try{ pais = Integer.parseInt(request.getParameter("f-pais")); }catch(Exception e) {}
try{ usuario = Sesiones.tienePermiso(session, "ordenes_consulta", "all")? Integer.parseInt(request.getParameter("f-usuario")) : Sesiones.getUsuario(session).getId(); }catch(Exception e) {}

Date fechaAlta1 = Util.parseDate(request.getParameter("f-fechaAlta1"));
Date fechaAlta2 = Util.parseDate(request.getParameter("f-fechaAlta2"));

List<EstadoVenta> estados = EstadoVenta.listar();
Map<Integer, Boolean> fEstados = new HashMap();
boolean fEstadosAux = false;
for(int i=0; i<estados.size(); i++)
	{
	fEstados.put(estados.get(i).getId(), request.getParameter("f-estado_"+estados.get(i).getId()) != null);
	if(fEstados.get(estados.get(i).getId())) fEstadosAux = true;
	}
if(!fEstadosAux)
	{ for(int i=0; i<estados.size(); i++) fEstados.put(estados.get(i).getId(), true); }

try{
	String accion = request.getParameter("accion");

	if(accion != null)
		{
		if(accion.compareTo("guardar") == 0)
			{
			OrdenVenta orden = new OrdenVenta(request.getParameter("id"));
			orden.setEstadoId(request.getParameter("estado_id"));
			orden.setIdentificador(request.getParameter("identificador"));
			boolean fantasia = request.getParameter("fantasia") != null;
			String logotipo = request.getParameter("logotipo" + (fantasia? "_fantasia" : ""));
			orden.setLogotipoId( Logotipo.getId(logotipo, fantasia));
			orden.setTipoPapelId(request.getParameter("tipo_papel_" + orden.getLineaId()));
			orden.setManijaId(request.getParameter("manija_" + orden.getLineaId()));
			orden.guardar();
			}

		if(accion.compareTo("borrar") == 0)
			{ OrdenVenta.borrar(request.getParameter("id")); }
		}
	}catch(Exception e) { out.println("<div id=\"dialog_error\" title=\"Error\">"+e+"</div>");}
%>



<div id="div_resultados">


<!-- Tabla de filtros -->
<form action="" method="get" id="form_filtros">
	<center><table class="filtros">
		<tr>
			<td align="right" valign="top">Estado:</td>
			<td align="left" valign="top" style="font-weight: normal;">
				<% {			
				for(int i=0; i<estados.size(); i++)
					{
					%><input type="checkbox" name="f-estado_<%= estados.get(i).getId() %>" <%= (fEstados.get(estados.get(i).getId()))? "checked" : "" %> value="true"/> <%= estados.get(i).getDescriptor() %> &nbsp;<%
					}
				} %>
			</td>
		</tr>
		<% if( Sesiones.tienePermiso(session, "ordenes_consulta", "all") ) { %>
		<tr>
			<td align="right" valign="top">Usuario:</td>
			<td align="left" valign="top">
				<select name="f-usuario">
					<option value="">Todos</option>
					<% {
					List<Usuario> usuarios = Usuario.listar();
					for(int i=0; i<usuarios.size(); i++)
						{ %>
						<option value="<%= usuarios.get(i).getId() %>" <%= (usuario == usuarios.get(i).getId())? "selected" : "" %>><%= usuarios.get(i).getUsername() %></option>
						<% }
					} %>
				</select>
			</td>
		</tr>
		<% } %>
		<tr>
			<td valign="top">Fecha alta:</td>
			<td valign="top">
				<input type="text" name="f-fechaAlta1" class="fecha" size="11" value="<%= Util.format(fechaAlta1, "dd/MM/yyyy") %>"/>
				y
				<input type="text" name="f-fechaAlta2" class="fecha" size="11" value="<%= Util.format(fechaAlta2, "dd/MM/yyyy") %>"/>
			</td>
		</tr>
		<tr>
			<td align="right">Pais:</td>
			<td align="left">
				<select name="f-pais">
					<option value="">Todos</option>
				<% {
				List<Pais> paises = Pais.listar();
				for(int p=0; p<paises.size(); p++)
					{%><option value="<%= paises.get(p).getId() %>" <%= (paises.get(p).getId() == pais)? "selected=\"selected\"" : "" %>><%= paises.get(p).getNombre() %></option><%}
				} %>
				</select>
			</td>
		</tr>
		<tr>
			<td align="right" colspan="2">
				<button name="buscar"><img src="icon/find.png" alt="" title="Buscar"/> <span>Buscar</span></button>
			</td>
		</tr>
	</table></center>
</form>

<br/>

<!-- Boton para dar de alta una orden y para exportar a Excel -->
<center>
	<table>
		<tr>
			<td>
				<form action="Excel" method="post" id="form_exportar">
					<input type="hidden" name="tipo" value="listaOrdenesVenta"/>
					<input type="hidden" name="ids" value=""/>
					<button style="width:90px;"><img src="icon/excel.png" alt="" title="Exportar a Excel"/> <span>Exportar</span></button>
				</form>
			</td>
			<td>
				<button id="btn_alta"><img src="icon/calendar_add.png" alt="" title="Crear orden"/> <span>Crear orden</span></button>
			</td>
		</tr>
	</table>
</center>

<br/>

<!-- Tabla de resultados -->
<center><table class="resultados" id="table_resultados">
	<tr class="titulo">
		<td>Sales order</td>
		<td>Logotipo</td>
		<td>Tipo papel</td>
		<td>Manija</td>
		<td>Laca UV</td>
		<td>Estado</td>
		<td>Usuario</td>
		<td>Fecha alta</td>
	</tr>

	<%
	// Obtengo la lista de todos los pedidos y la muestro en una tabla
	List<OrdenVenta> ordenes = OrdenVenta.buscar(fEstados, usuario, fechaAlta1, fechaAlta2, pais);
	String ids = "";

	for(int i=0; i<ordenes.size(); i++)
		{
		OrdenVenta o = ordenes.get(i);
		ids += "," + o.getId();
		%>
		<tr id="<%= o.getId() %>" class="editable">
			<td><%= o.getIdentificador() %></td>
			<td><%= o.getLogotipo() %></td>
			<td><%= o.getTipoPapel().getDescripcion() %></td>
			<td><%= o.getManija().getDescripcion() %></td>
			<td><%= o.getLacaUv() %></td>
			<td><%= o.getEstado() %></td>
			<td><%= o.getAltaUsuario().getNombre() %></td>
			<td><%= Util.format(o.getAltaFechaHora(), "dd/MM/yyyy HH:mm") %></td>
		</tr>
    <% } %>
</table></center>

<form action="" method="post" id="form_resultados" accept-charset="utf-8">
	<input type="hidden" name="ids" value="<%= ids %>"/>
</form>

</div>

<!-- Formulario de amb-->
<%
String readonly = Sesiones.tienePermiso(session, "ordenes_venta", "write")? "" : "readonly=\"readonly\"";
String disabled = Sesiones.tienePermiso(session, "ordenes_venta", "write")? "" : "disabled=\"disabled\"";
%>
<form method="post" action="" id="form_edicion" accept-charset="utf-8">
	<input type="hidden" name="accion" value="abm"/>
	<input type="hidden" name="id" value=""/>

	<center><table class="formulario" id="table_edicion">
		<tr>
			<td class="label">Sales order:</td>
			<td class="input"><input type="text" name="identificador" size="15" value="" <%= readonly %>/></td>
			<td class="label">Estado:</td>
			<td class="input">
				<select name="estado_id" <%= disabled %>>
				<% {
				for(int i=0; i<estados.size(); i++)
					{ %>
					<option value="<%= estados.get(i).getId() %>"><%= estados.get(i).getDescriptor() %></option>
					<% }
				} %>
				</select>
			</td>
		</tr>
		<tr>
			<td class="label">Linea:</td>
			<td class="input"><input type="text" name="linea" value="" readonly="readonly"/></td>			
		</tr>
		<tr>
			<td class="label">Logotipo:</td>
			<td class="input">
				<input type="text" name="logotipo" size="20" value="" <%= readonly %>/>
				<% if( Sesiones.tienePermiso(session, "ordenes_alta", "fantasia") ) { %>
				<input type="text" name="logotipo_fantasia" size="20" value="" <%= readonly %>/>
				<% } %>
			</td>
			<td class="label">Fantasía:</td>
			<td class="input"><input type="checkbox" name="fantasia" value="true"</td>
		</tr>
		<tr>
			<td class="label">Tipo de papel:</td>
			<td class="input">
				<% {
				List<Linea> lineas = Linea.listar();
				for(int l=0; l<lineas.size(); l++)
					{
					%><select name="tipo_papel_<%= lineas.get(l).getId() %>" class="tipo_papel" <%= disabled %>> <%
					List<TipoPapel> tipos = TipoPapel.listar(lineas.get(l).getId(), true);
					for(int i=0; i<tipos.size(); i++)
						{ %><option value="<%= tipos.get(i).getId() %>"><%= tipos.get(i).getDescriptor() %></option><% }
					%></select><%
					} 
				%>				
			</td>
			<td class="label">Manija:</td>
			<td class="input">
				<%
				for(int l=0; l<lineas.size(); l++)
					{
					%><select name="manija_<%= lineas.get(l).getId() %>" class="manija" <%= disabled %>> <%
					List<Manija> tipos = Manija.listar(lineas.get(l).getId(), true);
					for(int i=0; i<tipos.size(); i++)
						{ %><option value="<%= tipos.get(i).getId() %>"><%= tipos.get(i).getDescriptor() %></option><% }
					%></select><%
					} 
				} %>				
			</td>
		</tr>
		<tr>
			<td class="label">Interior:</td>
			<td class="input"><input type="text" name="interior" value="" readonly="readonly"/></td>
			<td class="label">Laca UV:</td>
			<td class="input"><input type="text" name="laca_uv" value="" readonly="readonly"/></td>
		</tr>
		<tr>
			<td class="label">Barniz:</td>
			<td class="input"><input type="text" name="barniz" value="" readonly="readonly"/></td>
			<td class="label">Cantidad de colores:</td>
			<td class="input"><input type="text" name="cantidad_colores" value="" readonly="readonly"/></td>
		</tr>
		<tr>
			<td class="label">Usuario:</td>
			<td class="input">
				<input type="text" name="alta_usuario" size="15" value="" readonly="true" class="readonly"/>
				<input type="hidden" name="alta_usuario_id" size="15" value=""/>
			</td>
			<td class="label">Fecha alta:</td>
			<td class="input"><input type="text" name="alta_fecha_hora" size="15" value="" readonly="true" class="readonly"/></td>
		</tr>
		<tr>
			<td class="label">Órdenes de trabajo:</td>
			<td id="td_edicion_ots" colspan="3"></td>
		</tr>
		<tr>
			<td colspan="4" class="input" style="text-align:center;">
				<button name="cancelar"><img src="icon/stop.png" alt="" title="Cancelar"/> <span>Cancelar</span></button>
				<% if( Sesiones.tienePermiso(session, "ordenes_venta", "write") ) { %>
				<button name="eliminar"><img src="icon/delete.png" alt="" title="Eliminar orden"/> <span>Eliminar</span></button>
				<button name="guardar"><img src="icon/save.png" alt="" title="Guardar orden"/> <span>Guardar</span></button>
				<% } %>
			</td>
		</tr>
	</table></center>

</form>
				
<%@ include file="jspf/footer.jspf" %>

</body>
</html>
